<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="STYLESHEET" href="lib.css" type='text/css' />
<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
<link rel='start' href='../index.html' title='Python documentation Index' />
<link rel="first" href="lib.html" title='Python library Reference' />
<link rel='contents' href='contents.html' title="Contents" />
<link rel='index' href='genindex.html' title='Index' />
<link rel='last' href='about.html' title='About this document...' />
<link rel='help' href='about.html' title='About this document...' />
<link rel="next" href="module-crypt.html" />
<link rel="prev" href="module-spwd.html" />
<link rel="parent" href="unix.html" />
<link rel="next" href="module-crypt.html" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name='aesop' content='information' />
<title>16.4 grp -- The group database</title>
</head>
<body>
<div class="navigation">
<div id='top-navigation-panel' xml:id='top-navigation-panel'>
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="16.3 spwd  "
  href="module-spwd.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="16. unix Specific Services"
  href="unix.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="16.5 crypt  "
  href="module-crypt.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="module-spwd.html">16.3 spwd  </a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="unix.html">16. Unix Specific Services</a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-crypt.html">16.5 crypt  </a>
</div>
<hr /></div>
</div>
<!--End of Navigation Panel-->

<h1><a name="SECTION0018400000000000000000">
16.4 <tt class="module">grp</tt> --
         The group database</a>
</h1>

<p>
<a name="module-grp"></a>  
<p class="availability">Availability: <span
 class="platform">Unix</span>.</p>

<p>
This module provides access to the <span class="Unix">Unix</span> group database.
It is available on all <span class="Unix">Unix</span> versions.

<p>
Group database entries are reported as a tuple-like object, whose
attributes correspond to the members of the <code>group</code> structure
(Attribute field below, see <code>&lt;pwd.h&gt;</code>):

<p>
<div class="center"><table class="realtable">
  <thead>
    <tr>
      <th class="right" >Index</th>
      <th class="left"  >Attribute</th>
      <th class="left"  >Meaning</th>
      </tr>
    </thead>
  <tbody>
    <tr><td class="right"  valign="baseline">0</td>
        <td class="left"  >gr_name</td>
        <td class="left"  >the name of the group</td></tr>
    <tr><td class="right"  valign="baseline">1</td>
        <td class="left"  >gr_passwd</td>
        <td class="left"  >the (encrypted) group password; often empty</td></tr>
    <tr><td class="right"  valign="baseline">2</td>
        <td class="left"  >gr_gid</td>
        <td class="left"  >the numerical group ID</td></tr>
    <tr><td class="right"  valign="baseline">3</td>
        <td class="left"  >gr_mem</td>
        <td class="left"  >all the group member's  user  names</td></tr></tbody>
</table></div>

<p>
The gid is an integer, name and password are strings, and the member
list is a list of strings.
(Note that most users are not explicitly listed as members of the
group they are in according to the password database.  Check both
databases to get complete membership information.)

<p>
It defines the following items:

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-3525' xml:id='l2h-3525' class="function">getgrgid</tt></b>(</nobr></td>
  <td><var>gid</var>)</td></tr></table></dt>
<dd>
Return the group database entry for the given numeric group ID.
<tt class="exception">KeyError</tt> is raised if the entry asked for cannot be found.
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-3526' xml:id='l2h-3526' class="function">getgrnam</tt></b>(</nobr></td>
  <td><var>name</var>)</td></tr></table></dt>
<dd>
Return the group database entry for the given group name.
<tt class="exception">KeyError</tt> is raised if the entry asked for cannot be found.
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-3527' xml:id='l2h-3527' class="function">getgrall</tt></b>(</nobr></td>
  <td><var></var>)</td></tr></table></dt>
<dd>
Return a list of all available group entries, in arbitrary order.
</dl>

<p>
<div class="seealso">
  <p class="heading">See Also:</p>

  <dl compact="compact" class="seemodule">
    <dt>Module <b><tt class="module"><a href="module-pwd.html">pwd</a></tt>:</b>
    <dd>An interface to the user database, similar to this.
  </dl>
  <dl compact="compact" class="seemodule">
    <dt>Module <b><tt class="module"><a href="module-spwd.html">spwd</a></tt>:</b>
    <dd>An interface to the shadow password database, similar to this.
  </dl>
</div>

<div class="navigation">
<div class='online-navigation'>
<p></p><hr />
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="16.3 spwd  "
  href="module-spwd.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="16. unix Specific Services"
  href="unix.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="16.5 crypt  "
  href="module-crypt.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="module-spwd.html">16.3 spwd  </a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="unix.html">16. Unix Specific Services</a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-crypt.html">16.5 crypt  </a>
</div>
</div>
<hr />
<span class="release-info">Release 2.5.1, documentation updated on 18th April, 2007.</span>
</div>
<!--End of Navigation Panel-->
<address>
See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
</address>
</body>
</html>
